// 原理：从数组的第一个开始，向后比较，找到最小的和第一个交换
function selectionSort(arr) {
  var len = arr.length
  var minIndex, temp
  for (var i = 0; i < len; i++) {
    minIndex = i
    for (var j = i + 1; j < len; j++) {
      if (arr[minIndex] > arr[j]) {
        minIndex = j
      }
    }
    temp = arr[i]
    arr[i] = arr[minIndex]
    arr[minIndex] = temp
  }
  return arr
}
const arr = [2, 1, 10, 8, 5, 4, 7.01, 3.3, 3, 9, 6, 0, -1, -2, 2 * 1, 3 * -1, 1 - 5, 2.13, 2.12]
console.log(selectionSort(arr));

// 不稳定排序